<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>BlackStar Monitor&amp;Profile System</title>
        <meta http-equiv="pragma" content="no-cache" />
        <link rel="stylesheet" type="text/css" href="/static/extjs/resources/css/ext-all.css" rel="stylesheet" />
        <script type="text/javascript" src="/static/extjs/adapter/ext/ext-base.js"></script>
        <script type="text/javascript" src="/static/extjs/ext-all.js"></script>    
        <script type="text/javascript" src="../js/help.js"></script>    
        <script type="text/javascript">
Ext.onReady(function(){
    Ext.QuickTips.init();
	Ext.form.Field.prototype.msgTarget = 'side';

    var jvmid = QueryString('jvmid');
	function refresh() {
	    Ext.Ajax.request({
				url: '../overview/' + jvmid,
				success: function (response,options){
				   	var data = Ext.util.JSON.decode(response.responseText);
				   	var cmp;
				   	for (var item in data)
				   	{
				   		cmp = Ext.getCmp(item);
				   		if ('memoryGcs' == item && cmp)
				   		{
				   			var memoryGcsShow = '';
				   			var i = 0;
				   			var memoryGcsValue = data[item];
				   			for (i=0; i<memoryGcsValue.length; i++)
				   			{
				   				if (i > 0)
				   				{
				   					memoryGcsShow = memoryGcsShow + '\n';
				   				}
				   				memoryGcsShow = memoryGcsShow + memoryGcsValue[i];
				   			}
				   			cmp.setText(memoryGcsShow);
				   		}
				   		else if (cmp)
				   		{
				   			cmp.setText(data[item]);
				   		}
				   	}
				},
				failure: function(response,options){
					Ext.MessageBox.alert("Error","加载VM概要信息出错");
				}
		});
	}
    
	var jmxBaseInfo = {
            xtype : 'fieldset',
            labelAlign : 'left',
            title : 'JMX Proxy',
            buttonAlign : 'right',
            width : '90%',
            labelWidth : 80,
            items : [{
                        layout : 'column', 
                        border : false,
                        labelSeparator : '：',
                        items : [{
	                            columnWidth : 0.5,
	                            layout : 'form',
	                            border : false,
	                            items : [{ 
	                                 xtype : 'label',
	                                 fieldLabel : 'URL',
	                                 id : 'jmxServiceURL',
	                                 anchor : '90%'
	                            	}]
	                      		},
	                      		{
	                            columnWidth : 0.5,
	                            layout : 'form',
	                            border : false,
	                            items : [{
	                            	xtype : 'button',
							  		id : 'refreshButton',
							     	text:"更新",
							        tooltip : '更新VM摘要信息信息',
							     	handler: function() {
							    		refresh();
							     	}
							    }]
	                     }]
                     }]

        };

	var jvmBaseInfo = {
            xtype : 'fieldset',        
            collapsible : true,       
            labelAlign : 'left',
            title : 'VM信息',
            buttonAlign : 'right',
            width : '90%',
            labelWidth : 80,
            items : [{
                        layout : 'column', 
                        border : false,
                        labelSeparator : '：',
                        items : [{
                                    columnWidth : 0.5,
                                    layout : 'form',
                                    border : false,
                                    items : [{ 
                                        xtype : 'label',
                                        fieldLabel : '启动时间',
                                        id : 'runtimeStartTime',
                                        anchor : '90%'
                                    },{ 
                                        xtype : 'label',
                                        fieldLabel : '名称',
                                        id : 'runtimeName',
                                        anchor : '90%'
                                    },{ 
                                        xtype : 'label',
                                        fieldLabel : '供应商',
                                        id : 'runtimeVmvendor',
                                        anchor : '90%'
                                    }]
                                }, {
                                    columnWidth : 0.5,
                                    layout : 'form',
                                    border : false,
                                    items : [{
                                        xtype : 'label',
                                        fieldLabel : '正常运行时间',
                                        id : 'runtimeUpTime',
                                        anchor : '90%'
                                    },{
                                        xtype : 'label',
                                        fieldLabel : '虚拟机',
                                        id : 'runtimeVmname',
                                        anchor : '90%'
                                    },{ 
                                        xtype : 'label',
                                        fieldLabel : '版本',
                                        id : 'runtimeVmversion',
                                        anchor : '90%'
                                    }]
                                }]
                    }]

        };
        
    
	var compilationBaseInfo = {
            xtype : 'fieldset',         
            collapsible : true,          
            labelAlign : 'left',
            title : 'JIT编译器',
            buttonAlign : 'right',
            width : '90%',
            labelWidth : 80,
            items : [{
                        layout : 'column', 
                        border : false,
                        labelSeparator : '：',
                        items : [{
                                    columnWidth : 0.5,
                                    layout : 'form',
                                    border : false,
                                    items : [{ 
                                        xtype : 'label',
                                        fieldLabel : 'JIT编译器',
                                        id : 'compilationName',
                                        anchor : '90%'
                                    }]
                                }, {
                                    columnWidth : 0.5,
                                    layout : 'form',
                                    border : false,
                                    items : [{
                                        xtype : 'label',
                                        fieldLabel : '总编译时间',
                                        id : 'compilationTime',
                                        anchor : '90%'
                                    }]
                                }]
                    }]

        };

	var memoryBaseInfo = {
            xtype : 'fieldset',        
            collapsible : true,        
            labelAlign : 'left',
            title : 'VM内存信息',
            buttonAlign : 'right',
            width : '90%',
            labelWidth : 80,
            items : [{
                        columnWidth : 1,
                        layout : 'form',
                        border : false,
                        items : [{
                                        xtype : 'label',
                                        fieldLabel : '堆内存',
                                        id : 'memoryHeap',
                                        anchor : '90%'
                        		},{
                                        xtype : 'label',
                                        fieldLabel : '非内存',
                                        id : 'memoryNonheap',
                                        anchor : '90%'
                        		},
                        		{
                                        xtype : 'label',
                                        fieldLabel : '垃圾回收器',
                                        id : 'memoryGcs',
                                        anchor : '90%'
                        		}
                        	]
                    }]

        };


	var otherInfo = {
            xtype : 'fieldset',        
            collapsible : true,       
            collapsed : true,          
            labelAlign : 'left',
            title : '其他',
            buttonAlign : 'right',
            width : '90%',
            labelWidth : 80,
            items : [{
                        columnWidth : 1,
                        layout : 'form',
                        border : false,
                        items : [{
                                        xtype : 'label',
                                        fieldLabel : 'VM参数',
                                        id : 'runtimeVmArgs',
                                        anchor : '90%'
                        		},{
                                        xtype : 'label',
                                        fieldLabel : '类路径',
                                        id : 'runtimeClassPath',
                                        anchor : '90%'
                        		},
                        		{
                                        xtype : 'label',
                                        fieldLabel : '库路径',
                                        id : 'runtimeLibraryPath',
                                        anchor : '90%'
                        		},
                        		{
                                        xtype : 'label',
                                        fieldLabel : '路径引导类',
                                        id : 'runtimeBootClassPath',
                                        anchor : '90%'
                        		}
                        	]
                    }]

        };
	            
    var viewport = new Ext.Viewport({   
        layout:'border',
        height:'100%',
        width:'100%',
        autoScroll : true,
        enabledTabScroll:true,
        items:[
         {
			  autoScroll : true,
			  enabledTabScroll:true,
         	  bodyStyle: 'padding:20px;',
         	  layout:'anchor',
		      region:"center",    
		      items:[jmxBaseInfo, jvmBaseInfo,compilationBaseInfo,memoryBaseInfo,otherInfo]
		      } 
         ]
    });
    
    refresh();
});
        </script>
    </head>
    <body style="padding: 10px;"></body>
</html>